Method and apparatus for developing video game elements with automatic game element evaluation

ABSTRACT

A method and apparatus is disclosed for developing game elements, such as game levels, to be included within a video game that can be played upon a data processing apparatus such as a computer, a game console, or a mobile device. The method includes receiving a set of desired game element characteristics, as might be prescribed by a game framework, automatically evaluating the game element to determine its characteristics, and including the game element into the game framework if the element matches the desired characteristics. The apparatus can implement the method using computer readable medium and a processor, or by allowing a user to create a game element, while automatically evaluating the game element to determine whether it matches the desired set of characteristics.

CROSS REFERENCE

The present application claims the benefits of U.S. Patent Provisional Application No. 61048263, entitled “Process for Creating Video Games and Game Elements for a Framework with Automatic Characteristic Evaluation”, which was filed on Apr. 28, 2008.

BACKGROUND

The present invention relates to a computer method and systems for developing a video game. Such games are typically playable upon a data processing apparatus such as a computer, a game console, mobile device, or other similar types of devices.

Video games are generally composed of discrete game elements. As one example, video games are often broken into discrete sections, often called ‘worlds’, ‘boards’, or (used here) ‘levels’. As another example, video games often contain discrete interactive elements, such as opponents, characters or monsters.

Each game element within a video game can have its own characteristics, and these characteristics are important to the overall enjoyment of the game. For example, a level may represent a progressive step within a linear goal-based game, and the difficulty of that level may be important to ensure the proper progression in the game. As another example, interactive elements such as opponents or characters may pose specific challenges to the player as part of the game storyline. Generally speaking, some set of game elements within a game typically must satisfy some set of characteristics in order for the overall game to be enjoyable.

It is common that computer video game elements may be organized according to their characteristics, within the video game. The organization of game elements can be important to whether or not the overall game is enjoyable. For example, consider that game play consistency may be a key element of what makes a game enjoyable. When considering levels within a game, each level typically may be organized according to some of a wide range of characteristics, including but not limited to: Level Difficulty, Time to Complete, Ability to Complete, Consistency of Difficulty, and others not listed here. Within the game, the characteristics of each level may be organized to ensure an appropriate “progression”; for example, from easy levels to hard levels within a game environment. In this example, the “progression” effect ensures that the game play from level-to-level offers the player a consistent, rather than a disjoint experience. Generally speaking, game elements may have characteristics, and may be organized according to those characteristics in order to make the game enjoyable.

Because this organization may be important to the overall enjoyment of the video game, the process of creating a video game typically involves the creation of an overall framework that is used for organizing, and possibly even prescribing, certain characteristics for each element to be included in the video game. For example, during the process of creating a video game, a framework of some number of levels may be designed that ensures that the game starts with “easy” levels and moves to “hard” levels later in time as the game is played (rather than randomly mixing easy levels and hard levels). Similarly, the framework might ensure variety, for example mixing one “time-based” level with every four “skill” levels. The development of game elements may then be done with the goal of creating elements that match the characteristics specified in the framework; for example, a framework may require a “Hard” game level, and in response to this requirement a game element creator may then attempt to create a “Hard” game level. The framework may change and evolve during the game creation process, but generally whether designing levels, game elements, or entire games, the game creation process may generally require that each level, game element, or entire game is developed and organized according to some specified set of characteristic requirements for each game element.

Therefore, the creation of a successful game may depend upon making sure that each developed game element matches the requirements of an overall game framework. It is desired to find ways to make this easier and more cost-effective.

SUMMARY

The present invention is directed to a method for developing a game element, which is to be used within a game that has been adapted to be played using a data processing apparatus. In the preferred embodiment, a predetermined set of characteristics that are specific to the game element to be created are provided. Following this, the game element is received, and an automated evaluation process determines whether the game element matches the predetermined set of characteristics. If the game element does match the predetermined set of characteristics, then the game element is included within a game framework.

An alternative embodiment of the present invention is an apparatus which includes a computer-readable medium, which stores instructions that have been configured to direct a processor to perform a method as follows: First, to provide a set of game element characteristics, next to receive a game element, and finally to evaluate using a data processing apparatus, whether the provided game element matches the provided characteristics.

An alternative embodiment of the present invention is an apparatus which includes a computer-readable medium, which stores instructions that have been configured to direct a processor to perform a method as follows: First, to receive a set of game element characteristics, next to accept user input to create a game element, and finally to evaluate using a data processing apparatus, whether the created game element matches the provided characteristics.

The construction and method of operation of the invention, however, together with additional objectives and advantages thereof will be best understood from the following description of specific embodiments when read in connection with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a method for developing video game elements in accordance with some embodiments of the invention.

FIG. 2 shows an example framework of game or game element characteristics in accordance with some embodiments of the invention.

FIG. 3 illustrates an apparatus for developing video game elements in accordance with some embodiments of the invention.

FIG. 4 illustrates another apparatus for developing video game elements in accordance with some embodiments of the invention.

FIG. 5 illustrates another method for developing video game elements in accordance with some embodiments of the invention.

FIG. 6 shows an example process that incorporates the method in accordance with some embodiments of the invention.

DESCRIPTION

Some embodiments of the present invention is directed to a method for developing a game element, which is to be used within a game that has been adapted to be played using a data processing apparatus. The method will be better understood when reviewing the following description and referring to FIG. 1.

Typically a game (or “video game”) may include rules directing game play, and incorporate one or more discrete game elements. In general, the game elements may include the components that make up the game, such as the main game character or characters, opponents, blocks, terrain, discrete areas of the game (sometimes called “boards”, “worlds”, “rooms”, or “levels”), entire games that can be played within the game or within a collection of games, and other types of game elements not listed here. Generally speaking, the rules directing game play may include goals to be accomplished, physics to be applied to game elements, interaction rules between game elements, rules for how the game play progresses between levels or other game elements, scoring rules, and other relevant rules not listed here. An example of such a game might be Super Mario Brothers, whose rules include the goal of saving the princess, collision detection rules between the main character and monsters, rules regarding scoring, and other rules; the same example game contains game elements such as the main characters, monsters, blocks, game levels which are arrangements of blocks and monsters, a game framework which directs the organization of game levels to ensure progressive game play, mini-games within the game such as the matching of cards to achieve rewards, and other game elements.

In some embodiments of the invention, one step of this method is to provide a pre-determined set of characteristics specific to the game element being developed, shown as (1) in FIG. 1. Typically when creating a game, some notion of which game elements are desired, and the characteristics of some of those elements, may be known before developing a game element. For example, if a game being created is to have ten levels, and the levels are to be played in order with progressively harder difficulty, then the first three levels might be “easy” levels, the next three “medium”, and the last four “hard”. In this example, if the game element being developed is level four, then the difficulty characteristic specific to that game element is “medium”. More generally, characteristics can vary depending upon the game, and upon the type of game element being created. For example, when developing a game element that is a level, possible characteristics may include Level Difficulty, Time to Complete, Ability to Complete, Consistency of Difficulty, and others not included here. As another example, when developing a game element that is an opponent within the game, possible characteristics may include Difficulty to Avoid, Difficulty to Destroy, and others not included here. As another example, when developing a game element that is a game itself, possible characteristics may include Difficulty of Winning, Time to Win, Ability to Win, Consistency of Difficulty, and others not included here. Such characteristics may be indicated as a number, as a string, or in other ways not listed here. For example, if a level difficulty is measured by how many moves the player must make before completing the level, then the level difficulty may be represented as a number of moves, with “1” being easy and larger numbers being harder. For other types of game elements, there can be other types of characteristics and other methods of indicating desired characteristics.

Another step of this method is to receive the game element, shown as (2) in FIG. 1. Game elements may be represented in a variety of different data structures, depending upon the type of game element and mode of receipt. For example, if the game element is a level within a game, and the level is comprised of a grid of block types, with each block type represented by an integer, then the data representation of the level may be an array of integers. The receipt of the game element may be done using a data bus allowing the data structure representing the game element to be available to the automated evaluation process within this method, or done using a data network such as the Internet, or through other methods of receipt not listed here.

The subsequent step of this method, shown as (3) in FIG. 1, can be broken into three sub-steps.

The first sub-step, shown as (3 a) in FIG. 1, is to perform an automated evaluation process upon the game element, to determine whether it meets the pre-determined set of characteristics. The specific method of performing the automated evaluation process may depend upon the game, the game rules, the game element, and the game element characteristics. In a typical implementation, the automated evaluation of game elements may be done using any combination of several methods, including the simulated play of the game using artificial intelligence and involving the game element in various scenarios, or through reverse engineering of the logic from the goal of a characteristic back to the properties of the game element, or through exhaustive searching through all possible configurations of game play to determine the best, or the average game play pattern that would involve the game element, or through other methods not listed here. There are an infinite number of possible characteristics, and accordingly an infinite number of automated evaluation methods may exist that could be embodied within such an evaluation process. As one example, if the game is a puzzle game involving the movement of blocks within a grid, and the rules of the game are that (1) blocks cannot be moved through, or on top, of other blocks, and (2) the goal of the game is to position one particular block in a certain position on the grid, and if the game element is a particular starting configuration of blocks, and the game element characteristic to be determined is the number of moves required to position the block in the goal state, then an automated evaluation process which exhaustively searched through all possible move states, starting with the initial game element and searching through all possibilities until the goal state was found, or determined impossible to achieve, would embody an automated evaluation process that would return the number of moves required to achieve the goal.

The next sub-step is shown as (3 b) in FIG. 1. When the automated evaluation process has determined the characteristics of the game element, those characteristics are compared against the prescribed set of characteristics for the game element, to determine whether the game element matches the prescribed set of characteristics.

The subsequent sub-step, shown as (3 c) in FIG. 1, is to include the game element into a game framework, if the previous step determines that the game element meets the pre-determined set of characteristics. A game will have some set of game elements, which it uses to enable game play. These game elements must be made available to the game. As the game is adapted to be played using a data processing apparatus, the game elements may be stored on some computer readable medium or set of multiple computer readable media, which can be accessed by the data processing apparatus, or which is included within the data processing apparatus. Further, the game framework may provide contextual information about the game element to make it meaningful to the game and uniquely identifiable, either by its relationships to one or more other game elements, or with a unique identifier. This information allowing unique identification may also associate the game element with its desired characteristics, providing a method of organizing all game elements according to their characteristics. As one example, in a game with ten levels, where the seventh level is supposed to be of “medium difficulty”, after a received game element has been automatically evaluated and determined to be of “medium difficulty”, it is then written to a computer readable medium which is accessible by the game, and an index of game elements is updated to indicate that the game element is level “7”. FIG. 2 illustrates another example of a game framework, showing several game levels of varying difficulty, organized in a non-linear fashion. As another example, in a game with ten levels, where the level after level “6” is supposed to be of “medium difficulty”, the game element might be written to a computer readable medium, and then level “6” might be updated to indicate that the next level is the game element that was just written. In either case, whether relative identification or unique identification is used, the game element is both included within the framework, and given a method of identification which establishes its place within the game.

Some embodiments of the present invention can be directed to an apparatus, illustrated in FIG. 3, comprising of a computer readable medium which stores instructions that are configured to direct a processor to perform the method as described above, and as illustrated in FIG. 1. For example, a hard drive in a computer might include software that knows how to provide desired game element characteristics, and receive a game element, into a set of software instructions that can automatically determine the characteristics of the game element, and determine whether it matches the desired characteristics.

Some embodiments of the present invention can be further directed to an apparatus, illustrated in FIG. 4, which comprises of a computer readable medium that stores instructions which are configured to direct a processor to perform a method for developing a game element. This apparatus also includes a user input device, and a visualization device, such that a user can create a game element as part of this method. The method embodied by these instructions will be best understood by reviewing the following description and referring to FIG. 5.

One step of this method, indicated by (1) in FIG. 5, receives game element characteristics in a manner similar to the first step of the method previously described, and previously illustrated in FIG. 1.

A further step of this method, indicated by (2) in FIG. 5, accepts user input and creates a game element based upon that user input. The method of user input may vary widely, but typically may involve the use of a mouse or keyboard to direct a computer in the creation of the game element. As described above, it may be possible to represent a game element in a variety of different data structures, and the specific method of creation may depend upon the desired representation of the game element, the rules of the game, the type of game element being created, and the method of processing user input and converting it into meaningful game element properties. As one example, if a game level is a grid of blocks, and the data structure used to store a game level is an array of values, each representing a particular block type, then one possible method of accepting user input and creating a game element would be to (1) display to the game element creator a grid of current block values, (2) allow the game element creator to click upon one of the values in the grid, (3) incrementing the value in the grid when it is clicked upon, to change the block value. There may be an infinite number of game element types, and correspondingly an infinite number of ways of accepting user input to create a game element within the scope and spirit of the present invention.

The subsequent step of this method, indicated by (3) in FIG. 5, can be broken into two sub-steps.

The first sub-step, indicated by (3 a) in FIG. 5, automatically determines the characteristics of the game element. As already described, a variety of evaluation methods exist and the specific implementation of this step may depend upon the capabilities of the processor, the rules of the game, the type of game element, and the characteristics being evaluated.

The second sub-step, indicated by (3 b) in FIG. 5, compares the game element characteristics determined by the automated evaluation process with the desired characteristics received in the first step. This comparison might test whether the game element's characteristics matches a specific set of characteristics, or falls within an acceptable range of characteristic values. For example, a level might be evaluated based upon the characteristic of “Difficulty” and “Time to Complete”, and the former characteristic might be compared against “Medium Difficulty”, and the latter characteristic compared to determine whether it is between “One and Two Minutes”. The specific implementation of this step may depend upon the characteristics being evaluated.

The present invention offers several benefits over prior art. As mentioned in the Background, the organization of game elements within a game according to their characteristics may be important to making the game enjoyable. As such, a framework which allows such organization is part of many video games. Further, the process of developing a game element to be included in such a framework may require the evaluation of that game element to determine its characteristics, in order to decide whether it meets the requirements of the framework. This determination may need to be done several times before the game element design is complete. Prior to the present invention, it was common that such determination might be done by a human being, such as the game element designer, or test personnel. Such manual evaluation of game elements, and determination of their characteristics, might generally represent a non-trivial portion of the total game creation cost in time or money.

Further, prior to the present invention, the process of designing and submitting a game element with suitable characteristics may require skills on the part of the game designer, particularly in cases when the game designer receives only infrequent feedback about the characteristics of the game or game element being developed. For example, if the game element is being evaluated only infrequently by test personnel, then the game designer may need sufficient skill to personally evaluate the game or game element during its development, or sufficient experience to approximate the characteristics of a game element without actually performing an evaluation. Such a skill requirement may limit the number of people qualified to correctly design game elements or entire games.

Through the use of this invention, a game creation process can be created which gives the game element developer timely feedback on the game element that they are developing. For example, instead of waiting for feedback from test personnel on whether a game level is of appropriate difficulty, a level designer can provide the game level to the present invention, and receive feedback based upon the determination of the automated evaluation process. The level designer can then adjust the game element design immediately, and cause the level to be re-evaluated until it is of the appropriate difficulty.

Because this process provides an automated way of determining a game element's characteristics, it lessens the need for a game element designer to be able to discern those characteristics themselves. For example, a level designer may not need to play a level in order to determine how hard it is. This fact may reduce the skill level required on the part of the game element developer, and thus may broaden the talent pool that can achieve successful game element development. Further, because feedback on game element characteristics may be made available within a very short timeframe, even unskilled game element creators may be able to develop appropriate game elements through trial and error, providing a very large talent pool of game element creators.

As demonstrated by both of the above results, the cost and timeframe involved with game element development may be lowered through the use of this invention. This fact, combined with the fact that a larger talent pool may be available for game element development, means that the present invention may further allow games to be created on a significantly broader scale than is possible using prior art. For example, rather than a game studio spending months and significant capital designing twenty levels within a game, the present invention may allow a game studio to create a framework that supports thousands of game levels, with desired characteristics for each level, and then permit the general public to create those game levels. The resulting game might have thousands of low-cost, user-generated levels that are all consistent with the requirements of a successful game. Further, because the present invention may lower the cost of determining whether each level meets the required characteristics, the present invention also may increase the chances that all of the levels will be consistent with each other and may increase the chances that the game itself will achieve a goal of being a consistent, enjoyable experience.

A further result may arise from the use of the present invention. Ongoing feedback during design of the game element can make the process of element creation more enjoyable, possibly turning the game element development process into its own game, as game element creators attempt to reach the goal of designing an appropriate game element so that it can be submitted. In fact, the results of the automatic evaluation may be condensed into a summary form, providing a general “score” to the game element designer, such as “This level is too difficult, but you're close!”

FIG. 6 gives an example of how the above methods can be used within a larger game element development process in accordance with some embodiments of the invention. This larger process is intended to give an example of how the present invention could be used, but is not the only process that could utilize the present invention. In this example, the game element development process involves:

-   -   A. A game framework which provides the desired characteristics         for a game element (1);     -   B. A game element creator develops a candidate game element (2),         typically by providing user input;     -   C. The desired characteristics are provided to the automatic         game element evaluator (3), and the candidate game element is         received by the automatic game element evaluator (4);     -   D. The automatic game element evaluator calculates the         characteristics of the game element (5) and then determines         whether the game element matches the desired characteristics         (6);     -   E. If the game element does not match the desired         characteristics, then the result of the determination in step         (6) is provided to the game element creator (7), who may then         modify the game element (8) and then provide it to the automated         evaluator again (5);     -   F. Alternatively, if the game element does match the desired         characteristics, then the game element creator is provided with         an option to submit the game element to the game framework (9);     -   G. If the game element creator selects to submit the element         (10), then the game element is included into the game framework         (11).

As mentioned above, alternative processes that include the present invention exist. For example, the present invention may be implemented within a larger game, where the game elements created are either parts of the larger game, or parts of sub-games within the larger game. Because the present invention may result in game element development becoming its own game, the present invention may actually become a valuable part of the game experience. For example, after a player completes five levels, they may be required to create one “medium” level before continuing the rest of the game; this creation becomes part of the game itself while at the same time developing game elements.

Another alternative process that includes the present invention might involve multiple game element creators who are all developing the same game element at the same time. In this case, the result of the determination might be presented to any one of the game element developers, allowing any game element developer to modify the game element and provide it back to the automated evaluation process. For example, after one game element creator made a level which was determined to be “too easy”, another game element creator might review the level to suggest changes, or make changes, before providing the altered game element to the automated evaluation process.

The above illustration provides many different embodiments or embodiments for implementing different features of the invention. Specific embodiments of components and processes are described to help clarify the invention. These are, of course, merely embodiments and are not intended to limit the invention from that described in the claims.

Although the invention is illustrated and described herein as embodied in one or more specific examples, it is nevertheless not intended to be limited to the details shown, since various modifications and structural changes may be made therein without departing from the spirit of the invention and within the scope and range of equivalents of the claims. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the invention, as set forth in the following claims. 

1. A method for developing a game element, to be used within a game adapted to be played using a data processing apparatus, comprising: providing a predetermined set of characteristics specific to the game element being developed; receiving the game element; and including the game element into a game framework when the game element is determined by an automated evaluation process as having met the predetermined set of characteristics.
 2. The method of claim 1 wherein the game element is excluded from the game framework when the game element is determined by the automated evaluation process as having not met the predetermined set of characteristics.
 3. The method of claim 1 wherein the game is a video game.
 4. The method of claim 1 wherein the game element is used within a level of the game framework.
 5. The method of claim 1 wherein the game element is an entire level of the game framework.
 6. The method of claim 1 wherein the predetermined set of characteristics comprises a difficulty measure of the game element.
 7. The method of claim 6 wherein the set of characteristics are determined such that the inclusion of the game element within the game framework will ensure that the game framework provides a progression of difficulty.
 8. The method of claim 1 wherein the automated evaluation process comprises presenting to a creator of the game element a determination result of whether the game element meets the predetermined set of characteristics, thereby enabling the creator to respond to the determination result.
 9. The method of claim 8 wherein a change in the game element triggers the automated evaluation process to re-determine whether the game element as changed meets the predetermined characteristics.
 10. The method of claim 9 wherein the automated evaluation process comprises presenting to the creator of the game element a re-determination result of whether the game element as changed meets the predetermined set of characteristics, thereby enabling the creator to respond to the re-determination result.
 11. The method of claim 1 wherein the game element is received or included into the game framework over a data network.
 12. The method of claim 11 wherein the data network is the Internet.
 13. A computer readable medium storing instructions configured to direct a processor to perform a method comprising: providing a predetermined set of game element characteristics; receiving a game element; determining via a data processing apparatus, based upon the set of predetermined characteristics, whether the game element description satisfies the game element characteristics.
 14. The medium of claim 13 is further configured to direct a processor to receive the game element from a computer executable method of game element creation.
 15. The medium of claim 14 is further configured to direct a processor to provide the results of the determination to the computer executable method of game element creation.
 16. The medium of claim 14 is further configured to direct a processor to provide the results of the determination to a method which, if the determination indicates that the game element satisfies the set of game element characteristics, adds the game element to a game framework.
 17. A computer readable medium storing instructions configured to direct a processor to perform a method comprising: receiving a predetermined set of game element characteristics; accepting user input to create a game element; determining via a data processing apparatus, based upon the set of predetermined characteristics, whether the game element satisfies the game element characteristics.
 18. The medium of claim 17 is further configured to direct the processor to provide the results of the game element determination to the user, allowing the user to see the results of the determination and provide additional user input which can change the game element.
 19. The medium of claim 18 is further configured to direct the processor to provide the user, when the determination shows the game element to match the predetermined characteristics, the option of executing a method which submits the game element to a game framework. 